Method for Pairing a Computer with a Video Conference Device

ABSTRACT

A method includes generating a random identification token on a computer that identifies the computer; modulating the identification token to an audio signal on the computer; causing, with the computer, a speaker to emit the audio signal receiving, at video conference device, the audio signal with a microphone associated with the video conference device; demodulating the audio signal to the identification token in the video conference device; sending at least the identification token and a unique identifier of the video conference device to the computer; and establishing a communication session through a communication network, that both the computer and video conference device are communicatively connected to, from the computer to the video conference device enabling control of, and data transfer to, the video conference device from the computer.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation under 37 C.F.R. §1.53(b) and35 U.S.C. §120 of U.S. patent application Ser. No. 13/008,624 entitled“METHOD FOR PAIRING A COMPUTER WITH A VIDEO CONFERENCE DEVICE” and filedJan. 18, 2011, which claims the benefit of provisional patentapplication 61/296,351, filed Jan. 19, 2010, the entire contents of bothof which are hereby incorporated by reference. The present applicationalso claims the benefit of priority under 35 U.S.C. §119 to Norwegianpatent application no. NO20100079, filed Jan. 18, 2010, the entirecontents of which are hereby incorporated by reference.

TECHNOLOGICAL FIELD

The exemplary embodiments described herein relate to video conferencingand data collaboration. An exemplary embodiment describes pairingpersonal computers and video conferencing devices.

BACKGROUND

Video conferencing systems are now widely being used as substitutes forpersonal communication and meetings. Video conferencing endpoints areoften fixed installations in meeting rooms, offices and other officepremises. Video conferencing endpoints may also be handheld portabledevices.

Fixed installations limit mobility of the users. On the other hand,portable personal computers are widely being used and are oftenaccompanying participants in video conference calls.

There is often a need for connecting computers and video conferencingendpoints, e.g. for displaying a presentation, sharing documents, oreven accessing the endpoint's user interface through the computer. Theconnection is usually provided by a cable, e.g. an analog screen cable.Problems related to screen settings, interoperability and connectors maythen occur. Analog cable connectors are also exposed to wear whenfrequently being connected and disconnected. Accessing the endpoint'suser interface or transferring calls from the computer to the endpointis only possible if the devices are aware of each other's networkidentities, and there is no way for the computer and endpoint toidentify each other through a standard cable connection. Bluetooth is anopen wireless protocol for exchanging data over short distances usingshort length radio waves from fixed and mobile devices, creatingpersonal area networks (PANs). It was originally conceived as a wirelessalternative to data cables. As Bluetooth is limited to PANs it is notable to operate on LANs or WANs or fetch network addresses. Conventionalvideo conference endpoints are usually not Bluetooth enabled, neitherare all computers, which may also be difficult to configure correctly.

SUMMARY

An exemplary embodiment is a method including: generating a randomidentification token on a computer, said identification tokenidentifying the computer; modulating the identification token to anaudio signal on the computer; causing, with the computer, a speaker toemit the audio signal; receiving, at video conference device, the audiosignal with a microphone associated with the video conference device;demodulating the audio signal to the identification token in the videoconference device; sending at least the identification token and aunique identifier of the video conference device to the computer; andestablishing a communication session through a communication network,that both the computer and video conference device are communicativelyconnected to, from the computer to the video conference device enablingcontrol of, and data transfer to, the video conference device from thecomputer.

Methods described herein may also be embodied as computer executableinstructions encoded a non-transitory computer readable storage medium.

Another exemplary embodiment is a system including: a computer; and avideo conferencing device communicatively coupled to the computerthrough a communication network, wherein the computer is configured togenerate a random identification token, said identification tokenidentifying the computer, the computer is configured to modulate theidentification token to an audio signal, the computer is configured tocause a speaker to emit the audio signal, the video conference device isconfigured to receive4 the audio signal with a microphone associatedwith the video conference device, the video conference device isconfigured to demodulate the audio signal to the identification token,the video conference device is configured to send at least theidentification token and a unique identifier of the video conferencedevice to the computer, and the computer is configured to establish acommunication session through the communication network, that enablescontrol of, and data transfer to, the video conference device from thecomputer.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to make the exemplary embodiments more readily understandable,the discussion that follows will refer to the accompanying drawings,which include:

FIG. 1 is an illustration of a pairing situation between a computer anda video conference device according to an exemplary embodiment;

FIGS. 2A-2B are flow charts of exemplary methods; and

FIG. 3 is a block diagram of an exemplary computer system.

DETAILED DESCRIPTION

In the following, exemplary embodiments of the present technologicaladvancement will be discussed. However, people skilled in the art willrealize other applications and modifications within the scope of theinvention as defined in the enclosed independent claims.

An exemplary embodiment includes a method and a computer readablestorage medium in a computer for pairing the computer and a videoconferencing device (endpoint, terminal, client} by emitting encodedand/or modulated sound from the computer's speaker being captured bymicrophones of the video conferencing devices in proximity. Theencoded/modulated sound includes a special signature recognizable forpairing compatible devices followed by a randomly generatedidentification token generated by the computer. Assuming that both thecomputer and the nearby endpoints are connected to the samecommunication network like a LAN, WLAN or WAN, video conference entitieswill be able to identify, be aware of and access each other.

FIG. 1 is an illustration of a pairing situation between a computer 10and a video conference device 20 via network 30 according to anexemplary embodiment. A video conference device may be a stationaryvideo conference endpoint, or a mobile device that function as videoconference endpoint.

An exemplary embodiment includes a computer software client application,a server and a number of video conferencing devices. The clientapplication is at least able to generate a random identification tokenby using the underlying operating system's APIs. The client applicationis further adjusted to modulate and/or code the identification token ina sound which is emitted from the computer's loudspeaker. The code has aheading with a signature unique for the system or applicationrecognizable for system compatible devices. The client applicationshould also have a User Interface through which a user can interact withthe system. For example, when a user carrying his computer enters ameeting room with a video conferencing device installed, he should beable to initiate pairing with the endpoint through the User Interface.Alternatively, the application could by default regularly send outmodulated/coded sound to exhibit its presence to nearby devices. Theapplication must include a transmission routine being able to encodeand/or modulate the identification token to audio that is emittable fromthe computer's load speaker. Many modulation techniques could be used,including Phase Skift Key (PSK) or Frequency Skift key (FSK). The audiomay or may not be perceivable by the human ear, but the frequenciesshould preferably lie within the frequency area of conventional videoconferencing microphones.

A device compatible with the system will have a software routineinstalled adjusted to continuously receive signals from a microphoneconnected to or integrated in the device. As the routine recognizes thesignature sound, it starts demodulating and/or decoding the followingaudio using the demodulation and/or decoding technique being set for thesystem. The routine should also be able to sense the sound level of theaudio with the recognizable signature. Once the computer identificationand sound level is provided, the computer identification token, thesound level and the device identification (being e.g. the IP address ofthe endpoint) will be transmitted back to the computer. There areseveral ways of reaching the computer. If both the video conferencedevice and the computers are connected to a relatively small LAN, thedata can be broadcasted to all entities in the LAN. The video conferencedevice does not have to be aware of which computers are registered inthe system. It does not even have to be aware of the computer'sidentity, as it can simply transfer the demodulated/decoded data to theentire LAN network, and the computer initiating the pairing will belistening for broadcast messages on the network, and fetching them asthey appear. As such messages contain the identification token they areresponses for, the software will be able to disregard responses intendedfor other computers. In the case of a larger LAN, a different solutioncould be used. In such a case, the computer software could use IETF'sZeroconf standard to contact a server and register its interest in suchmessages. Such a request could include the identification token about tobe modulated/encoded, so the server can send the response only to thecomputer that emitted the audio signal.

When the client application installed on the computer receives the dataoriginating from its own pairing call, the software uses the identity tocontact the device from which the data was sent over the network,typically determines the make and model, and presents the device in theUser Interface. If the computer receives data from more than one devicewithin a limited time period, the application can use the sound levelmeasured by the respective devices to sort them in a list in the UserInterface. The user is then invited to select the one device with whichhe/she would like to pair his/her computer.

When the preferred device has been selected, the application establishesa communication session between the computer and the device, e.g.through a well-defined protocol run over TCP/IP. The device can then becontrolled by the application from the computer e.g. at the same levelas a conventional remote control. Control functions such as placing acall, adjusting volume, camera control are obvious features that shouldbe available through the User Interface.

As an alternative to a direct communication session between the computerand the device, the computer could also get access to the device throughan existing video conferencing management programs/suits by installing aproxy application on a server. The proxy application may be able toreceive and parse instructions from the client application translatethem to instructions compliment with the video conference managementprogram, and act and respond accordingly. Video conferencing managingprograms typically have access to and are able to control mosttelecommunication units and network resources within a corporation andan up to date phone book. The initial pairing communication as discussedabove should then also totally or partly run via the video conferencemanagement server. In present example, when a device receives an audiosignal recognizable as a pairing sound, it would always send theperceived sound level and the following identification to the videoconferencing management server, and leave it to the server to relay theinformation to the right computer and manage the following provision ofaccess to the device from the computer. This could be a reasonableimplementation because video conference management programs already haveindicated features for managing registered devices and providing accessto controlling them remotely. Also, in the setting of a personalcomputer being paired with a video conference device, it is possible todisplay presentations, documents and other files and screen contentsstored in the computer on the device and for other participants in aconference in which the device participates. The content could be 1 forexample/sent from the computer over the communication session as screenshots appearing at the device and in the conference as a presentation.

FIG. 2A illustrates an exemplary method. Step 201 includes generating arandom identification token on a computer 1 wherein the identificationtoken identifies the computer. Step 203 includes modulating theidentification token to an audio signal on the computer. Step 205includes causing, with the computer, a speaker to emit the audio signal.Step 207 includes receiving, at video conference device, the audiosignal with a microphone associated with the video conference device.Step 209 includes demodulating the audio signal to the identificationtoken in the video conference device. Step 211 includes sending at leastthe identification token and a unique identifier of the video conferencedevice to the computer. Step 213 includes establishing a communicationsession through a communication network that both the computer and videoconference device are communicatively connected to, from the computer tothe video conference device enabling control of, and data transfer to,the video conference device from the computer.

FIG. 2B illustrates an alternative embodiment. This alternativeembodiment includes the steps of FIG. 2A, but optionally includes step215 of adding a predefined signature as a heading of the audio signal inadvance of the identification token before emitting the audio signalfrom the speaker, step 217 of recognizing, by the video conferencedevice, the predefined signature before demodulating the audio signal,step 219 of measuring an audio level of the audio signal received at themicrophone and sending an indication of the audio level from the videoconference device to the computer together with the identification tokenand the unique identifier, and step 221 of providing, in the computer, aUser Interface through which a user is allowed to control and transferdata to the video conference device through the communication session.

FIG. 3 illustrates a computer system 1201. Computer system 1201 mayserve as computer shown in FIG. 1. The computer system 1201 includes abus 1202 or other communication mechanism for communicating information,and a processor 1203 coupled with the bus 1202 for processing theinformation. The computer system 1201 also includes a main memory 1204,such as a random access memory (RAM) or other dynamic storage device(e.g., dynamic RAM (DRAM), static RAM (SRAM), and synchronous DRAM(SDRAM)), coupled to the bus 1202 for storing information andinstructions to be executed by processor 1203. In addition, the mainmemory 1204 may be used for storing temporary variables or otherintermediate information during the execution of instructions by theprocessor 1203. The computer system 1201 further includes a read onlymemory (ROM) 1205 or other static storage device (e.g., programmable ROM(PROM), erasable PROM (EPROM), and electrically erasable PROM (EEPROM))coupled to the bus 1202 for storing static information and instructionsfor the processor 1203.

The computer system 1201 also includes a disk controller 1206 coupled tothe bus 1202 to control one or more storage devices for storinginformation and instructions, such as a magnetic hard disk 1207, and aremovable media drive 1208 (e.g., floppy disk drive, read-only compactdisc drive, read/write compact disc drive, compact disc jukebox, tapedrive, and removable magneto-optical drive). The storage devices may beadded to the computer system 1201 using an appropriate device interface(e.g., small computer system interface {SCSI), integrated deviceelectronics (IDE), enhanced-IDE (E-IDE), direct memory access (DMA), orultraDMA).

The computer system 1201 may also include special purpose logic devices(e.g., application specific integrated circuits (ASICs)) or configurablelogic devices (e.g., simple programmable logic devices (SPLDs), complexprogrammable logic devices (CPLDs), and field programmable gate arrays(FPGAs)).

The computer system 1201 may also include a display controller 1209coupled to the bus 1202 to control a display 1210, such as a cathode raytube (CRT), for displaying information to a computer user. The computersystem includes input devices, such as a keyboard 1211 and a pointingdevice 1212, for interacting with a computer user and providinginformation to the processor 1203. The pointing device 1212, forexample, may be a mouse, a trackball, or a pointing stick forcommunicating direction information and command selections to theprocessor 1203 and for controlling cursor movement on the display 1210.In addition, a printer may provide printed listings of data storedand/or generated by the computer system 1201.

The computer system 1201 performs a portion or all of the processingsteps in response to the processor 1203 executing one or more sequencesof one or more instructions contained in a memory, such as the mainmemory 1204. Such instructions may be read into the main memory 1204from another computer readable medium, such as a hard disk 1207 or aremovable media drive 1208. One or more processors in a multi-processingarrangement may also be employed to execute the sequences ofinstructions contained in main memory 1204. In alternative embodiments,hard-wired circuitry may be used in place of or in combination withsoftware instructions. Thus, embodiments are not limited to any specificcombination of hardware circuitry and software.

As stated above, the computer system 1201 includes at least onenon-transitory computer readable medium or memory for holdinginstructions programmed according to the present technologicaladvancement and for containing data structures, tables, records, orother data described herein. Examples of non-transitory computerreadable media are compact discs, hard disks, floppy disks, tape,magneto-optical disks, PROMs (EPROM, EEPROM, flash EPROM}, DRAM, SRAM,SDRAM, or any other magnetic medium, compact discs (e.g., CD-ROM}, orany other optical medium, punch cards, paper tape, or other physicalmedium with patterns of holes. Alternatively, such instructions may alsobe encoded into a signal.

Stored on any one or on a combination of computer readable media, thepresent technological advancement may include software for controllingthe computer system 1201, for driving a device or devices forimplementing the some or all of the above-noted steps, and for enablingthe computer system 1201 to interact with a human user (e.g., printproduction personnel). Such software may include, but is not limited to,device drivers, operating systems, development tools, and applicationssoftware.

The computer code devices may be any interpretable or executable codemechanism, including but not limited to scripts, interpretable programs,dynamic link libraries (DLLs), Java classes, and complete executableprograms. Moreover, parts of the processing may be distributed forbetter performance, reliability, and/or cost.

The term “computer readable medium” as used herein refers to anynon-transitory medium that participates in providing instructions to theprocessor 1203 for execution. A computer readable medium may take manyforms, including but not limited to, non-volatile media, volatile media,and transmission media. Non-volatile media includes, for example,optical, magnetic disks, and magneto-optical disks, such as the harddisk 1207 or the removable media drive 1208. Volatile media includesdynamic memory, such as the main memory 1204.

Various forms of computer readable media may be involved in carrying outone or more sequences of one or more instructions to processor 1203 forexecution. For example, the instructions may initially be carried on amagnetic disk of a remote computer. The remote computer can load theinstructions for implementing all or a portion of the above-noted stepsremotely into a dynamic memory and send the instructions over atelephone line using a modem. A modem local to the computer system 1201may receive the data on the telephone line and use an infraredtransmitter to convert the data to an infrared signal. An infrareddetector coupled to the bus 1202 can receive the data carried in theinfrared signal and place the data on the bus 1202. The bus 1202 carriesthe data to the main memory 1204, from which the processor 1203retrieves and executes the instructions. The instructions received bythe main memory 1204 may optionally be stored on storage device 1207 or1208 either before or after execution by processor 1203.

The computer system 1201 also includes a communication interface 1213coupled to the bus 1202. The communication interface 1213 provides atwo-way data communication coupling to a network link 1214 that isconnected to, for example, a local area network (LAN) 1215, or toanother communications network 1216 such as the Internet. For example,the communication interface 1213 may be a network interface card toattach to any packet switched LAN. As another example, the communicationinterface 1213 may be an asymmetrical digital subscriber line {ADSL}card, an integrated services digital network (ISDN} card or a modem toprovide a data communication connection to a corresponding type ofcommunications line. Wireless links may also be implemented. In any suchimplementation, the communication interface 1213 sends and receiveselectrical, electromagnetic or optical signals that carry digital datastreams representing various types of information.

The network link 1214 typically provides data communication through oneor more networks to other data devices. For example, the network link1214 may provide a connection to another computer through a localnetwork 1215 (e.g., a LAN) or through equipment operated by a serviceprovider, which provides communication services through a communicationsnetwork 1216. The local network 1214 and the communications network 1216use, for example, electrical, electromagnetic, or optical signals thatcarry digital data streams, and the associated physical layer (e.g., CAT5 cable, coaxial cable, optical fiber, etc). The signals through thevarious networks and the signals on the network link 1214 and throughthe communication interface 1213, which carry the digital data to andfrom the computer system 1201 may be implemented in baseband signals, orcarrier wave based signals. The baseband signals convey the digital dataas unmodulated electrical pulses that are descriptive of a stream ofdigital data bits, where the term “bits” is to be construed broadly tomean symbol, where each symbol conveys at least one or more informationbits. The digital data may also be used to modulate a carrier wave, suchas with amplitude, phase and/or frequency shift keyed signals that arepropagated over a conductive media, or transmitted as electromagneticwaves through a propagation medium. Thus, the digital data may be sentas unmodulated baseband data through a “wired” communication channeland/or sent within a predetermined frequency band, different thanbaseband, by modulating a carrier wave. The computer system 1201 cantransmit and receive data, including program code, through thenetwork(s) 1215 and 1216, the network link 1214 and the communicationinterface 1213. Moreover, the network link 1214 may provide a connectionthrough a LAN 1215 to a mobile device 1217 such as a personal digitalassistant (PDA) laptop computer, or cellular telephone.

The video conferencing device may include the hardware of the computersystem illustrated in FIG. 3. However, such hardware would be programmedto implement the above-noted steps performed at the video conferencingdevice. Exemplary video conferencing devices may include:

Tandberg's Telepresence T3 system, Cisco's TelePresence System 3010,Tandberg's profile series endpoint, Tandberg's EX series, Tandberg's1700 MXP series, Tandberg's 1000 MXP series.

What is claimed is:
 1. A method comprising: generating a identificationtoken at a first device; emitting a signal based on the identificationtoken, wherein the signal is received at a second device with a sensorand analyzed at the second device; receiving, at the first device, atleast the identification token and a unique identifier of the seconddevice via a communication network to which both the first device andthe second device are connected, communication via the communicationnetwork being separate from communication via the signal; andestablishing a communication session through the communication networkfrom the first device to the second device enabling control of, and datatransfer to, the second device from the first device.
 2. The method ofclaim 1, wherein the communication session is a video conference.
 3. Themethod of claim 1, wherein the signal is emitted in a meeting room. 4.The method according to claim 1, further comprising: adding a predefinedsignature as a heading of the signal in advance of the identificationtoken.
 5. The method according to claim 1, wherein a level of the signalreceived at the sensor is measured, the method comprising: receiving anindication of the level of the signal from the second device with theidentification token and the unique identifier.
 6. The method accordingto claim 1, further comprising: providing, in the first device, aninterface through which a user is allowed to control and transfer datato the second device through the communication session.
 7. The method ofclaim 1, wherein the unique identifier is an internet protocol (IP)address.
 8. The method of claim 1, wherein the second device broadcastsa message including the identification token and the unique identifierand the first device identifies the message based on the identificationtoken and uses the message to establish the communication session.
 9. Anon-transitory computer readable storage medium encoded withinstructions, which when executed by a processor causes the processor toimplement a method comprising: generating a identification token for afirst device; emitting a signal indicative of the identification tokenfrom the first device, wherein the signal is receives at a sensor of thesecond device and analyzed by the second device; receiving theidentification token and a unique identifier from the second device viaa communication network to which both the first device and the seconddevice are connected, communication via the communication network beingseparate from communication via the signal; and establishing acommunication session through the communication network from the firstdevice to the second device enabling control of, and data transfer to,the second device from the first device.
 10. The non-transitory computerreadable storage medium according to claim 9, wherein the method furthercomprises: adding a predefined signature as a heading of the signal inadvance of the identification token.
 11. The non-transitory computerreadable storage medium according to claim 9, wherein the method furthercomprises: providing, at the first device, an interface configured toreceive one or more user commands to control and transfer data to thesecond device through the communication session.
 12. The non-transitorycomputer readable storage medium according to claim 9, wherein themethod further comprises: receiving an indication of a signal level ofthe signal received at the sensor; and adding, in response to theindication, the second device to a list of devices having received thesignal sorted by signal level in the interface.
 13. The non-transitorycomputer readable storage medium according to claim 9, wherein theunique identifier is an internet protocol (IP) address.
 14. Thenon-transitory computer readable storage medium according to claim 9,wherein the communication session is a video conference.
 15. Thenon-transitory computer readable storage medium according to claim 9,wherein the signal is emitted in a meeting room.
 16. A systemcomprising: a first device; and a second device communicatively coupledto the first device through a communication network, wherein the firstdevice is configured to generate a random identification tokenidentifying the first device, the first device is configured to send asignal including the random identification token identifying the firstdevice, the second device is configured to receive the signal with asensor associated with the second device, the second device isconfigured to analyze the signal to obtain the identification token, thesecond device is configured to send at least the identification tokenreceived via the signal and a unique identifier of the second device tothe first device via the communication network, communication via thecommunication network being separate from communication via the signal,and the first device is configured to establish a communication sessionthrough the communication network, that enables control of, and datatransfer to, the second device from the first device.
 17. The system ofclaim 16, wherein the first device is configured to add a predefinedsignature as a heading of the signal in advance of the identificationtoken.
 18. The system according to claim 16, wherein the second deviceis configured to measure a level of the signal received at the sensorand to send an indication of the level to the first device together withthe identification token and the unique identifier.
 19. The systemaccording to claim 16, wherein the first device includes an interfaceconfigured to receive a user command to control or transfer data to thesecond device through the communication session.
 20. The system of claim16, wherein the unique identifier is an internet protocol (IP) address.